Release 10.1A: OpenEdge Development:
Web Services


Defining and passing Web service method parameters

Most parameters are defined and passed in SOAP messages as XML Schema data types. Progress 4GL Web services expose Progress 4GL parameter data types as XML data types in the WSDL based on the “2001 XML Schema: Data types” (referred to as xsd in Table 4–1).

Table 4–1 lists the data type mappings for parameters between Progress 4GL and XML data types. Most of these parameters can also be passed as arrays. 

Table 4–1: Supported XML data types
Progress 4GL data type
XML Schema data type
CHARACTER
xsd:string 
COM-HANDLE
xsd:long 
DATE
xsd:date 
DATETIME
xsd:dateTime 
DATETIME-TZ
xsd:dateTime 
DECIMAL
xsd:decimal 
INTEGER (32 bit)
xsd:int 
LOGICAL
xsd:boolean 
LONGCHAR1
xsd:string 
MEMPTR1
xsd:base64Binary 
RAW
xsd:base64Binary 
RECID (32 or 64 bit)
xsd:long 
ROWID
xsd:base64Binary 
WIDGET-HANDLE
xsd:long 
TABLE (static temp-table)2
complexType 
TABLE-HANDLE (dynamic temp-table)2
complexType (<any>) 
1LONGCHAR and MEMPTR data types are designed to support very large “strings” of data. Use of these data types as parameters in Web services can result in a serious performance impact.
2TABLE and TABLE-HANDLE data types cannot be passed as arrays. For more information on passing arrays, see the "Array parameters" section.

Note: The Progress 4GL parameter type BUFFER, DATASET, or DATASET-HANDLE is not supported. However, you can pass a Progress 4GL ProDataSet (DATASET or DATASET-HANDLE) parameter in a Web service by first serializing the ProDataSet to XML and passing it to the Web service as a LONGCHAR. The client must then parse the XML properly to exchange the data with the Web service. For more information on serializing ProDataSets as XML in the 4GL, see OpenEdge Development: Programming Interfaces .


Copyright © 2005 Progress Software Corporation
www.progress.com
Voice: (781) 280-4000
Fax: (781) 280-4095